{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 1. 股票数据获取"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 1.1 方法一\n",
    "Python库：pandas-datareader   \n",
    "https://pandas-datareader.readthedocs.io/en/latest/    \n",
    "\n",
    "Python库：yfinance（没有提供一种方法来抓取雅虎财经上可用的任何新闻报道/分析，不适用于构建依赖于情感分析的模型）   \n",
    "可以访问雅虎财经上可用的财务数据    \n",
    "import yfinance as yf    \n",
    "   \n",
    "https://ntguardian.wordpress.com/2016/09/19/introduction-stock-market-data-python-1/"
   ]
  },
  {
   "attachments": {
    "image.png": {
     "image/png": "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"
    }
   },
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "![image.png](attachment:image.png)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 123,
   "metadata": {},
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "from pandas_datareader import data\n",
    "import matplotlib.pyplot as plt\n",
    "from datetime import datetime"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 131,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>High</th>\n",
       "      <th>Low</th>\n",
       "      <th>Open</th>\n",
       "      <th>Close</th>\n",
       "      <th>Volume</th>\n",
       "      <th>Adj Close</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Date</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2019-12-31</th>\n",
       "      <td>213.639999</td>\n",
       "      <td>210.729996</td>\n",
       "      <td>212.000000</td>\n",
       "      <td>212.100006</td>\n",
       "      <td>6773600</td>\n",
       "      <td>212.100006</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2020-01-02</th>\n",
       "      <td>219.979996</td>\n",
       "      <td>216.539993</td>\n",
       "      <td>216.600006</td>\n",
       "      <td>219.770004</td>\n",
       "      <td>15873500</td>\n",
       "      <td>219.770004</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2020-01-03</th>\n",
       "      <td>218.203003</td>\n",
       "      <td>216.009995</td>\n",
       "      <td>216.350006</td>\n",
       "      <td>217.000000</td>\n",
       "      <td>8604500</td>\n",
       "      <td>217.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2020-01-06</th>\n",
       "      <td>217.160004</td>\n",
       "      <td>214.089996</td>\n",
       "      <td>214.889999</td>\n",
       "      <td>216.639999</td>\n",
       "      <td>11885500</td>\n",
       "      <td>216.639999</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2020-01-07</th>\n",
       "      <td>218.940002</td>\n",
       "      <td>216.690002</td>\n",
       "      <td>217.639999</td>\n",
       "      <td>217.630005</td>\n",
       "      <td>9388000</td>\n",
       "      <td>217.630005</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                  High         Low        Open       Close    Volume  \\\n",
       "Date                                                                   \n",
       "2019-12-31  213.639999  210.729996  212.000000  212.100006   6773600   \n",
       "2020-01-02  219.979996  216.539993  216.600006  219.770004  15873500   \n",
       "2020-01-03  218.203003  216.009995  216.350006  217.000000   8604500   \n",
       "2020-01-06  217.160004  214.089996  214.889999  216.639999  11885500   \n",
       "2020-01-07  218.940002  216.690002  217.639999  217.630005   9388000   \n",
       "\n",
       "             Adj Close  \n",
       "Date                    \n",
       "2019-12-31  212.100006  \n",
       "2020-01-02  219.770004  \n",
       "2020-01-03  217.000000  \n",
       "2020-01-06  216.639999  \n",
       "2020-01-07  217.630005  "
      ]
     },
     "execution_count": 131,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#定义时间\n",
    "codeDict = {'阿里巴巴':'BABA', '京东':'JD','沃尔玛':'WMT','亚马逊':'AMZN','易贝':'EBAY'}\n",
    "start_date = '2020-01-01'\n",
    "end_date = '2022-03-20'\n",
    "\n",
    "# 阿里巴巴股票数据\n",
    "babaDf = data.get_data_yahoo(codeDict['阿里巴巴'], start_date, end_date)\n",
    "# 查看前五行数据\n",
    "babaDf.head(5)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 132,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>High</th>\n",
       "      <th>Low</th>\n",
       "      <th>Open</th>\n",
       "      <th>Close</th>\n",
       "      <th>Volume</th>\n",
       "      <th>Adj Close</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>count</th>\n",
       "      <td>560.000000</td>\n",
       "      <td>560.000000</td>\n",
       "      <td>560.000000</td>\n",
       "      <td>560.000000</td>\n",
       "      <td>5.600000e+02</td>\n",
       "      <td>560.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>mean</th>\n",
       "      <td>211.879620</td>\n",
       "      <td>206.142904</td>\n",
       "      <td>209.244952</td>\n",
       "      <td>209.065911</td>\n",
       "      <td>2.060766e+07</td>\n",
       "      <td>209.065911</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>std</th>\n",
       "      <td>52.454826</td>\n",
       "      <td>51.954351</td>\n",
       "      <td>52.388599</td>\n",
       "      <td>52.269010</td>\n",
       "      <td>1.446593e+07</td>\n",
       "      <td>52.269010</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>min</th>\n",
       "      <td>80.139999</td>\n",
       "      <td>73.279999</td>\n",
       "      <td>75.099998</td>\n",
       "      <td>76.760002</td>\n",
       "      <td>6.231400e+06</td>\n",
       "      <td>76.760002</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25%</th>\n",
       "      <td>174.872494</td>\n",
       "      <td>169.312500</td>\n",
       "      <td>173.375004</td>\n",
       "      <td>171.924999</td>\n",
       "      <td>1.314778e+07</td>\n",
       "      <td>171.924999</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>50%</th>\n",
       "      <td>216.585007</td>\n",
       "      <td>212.615005</td>\n",
       "      <td>215.220001</td>\n",
       "      <td>215.260002</td>\n",
       "      <td>1.721460e+07</td>\n",
       "      <td>215.260002</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>75%</th>\n",
       "      <td>251.674995</td>\n",
       "      <td>244.135002</td>\n",
       "      <td>247.160000</td>\n",
       "      <td>248.685001</td>\n",
       "      <td>2.255600e+07</td>\n",
       "      <td>248.685001</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>max</th>\n",
       "      <td>319.320007</td>\n",
       "      <td>308.910004</td>\n",
       "      <td>313.500000</td>\n",
       "      <td>317.140015</td>\n",
       "      <td>1.598343e+08</td>\n",
       "      <td>317.140015</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "             High         Low        Open       Close        Volume  \\\n",
       "count  560.000000  560.000000  560.000000  560.000000  5.600000e+02   \n",
       "mean   211.879620  206.142904  209.244952  209.065911  2.060766e+07   \n",
       "std     52.454826   51.954351   52.388599   52.269010  1.446593e+07   \n",
       "min     80.139999   73.279999   75.099998   76.760002  6.231400e+06   \n",
       "25%    174.872494  169.312500  173.375004  171.924999  1.314778e+07   \n",
       "50%    216.585007  212.615005  215.220001  215.260002  1.721460e+07   \n",
       "75%    251.674995  244.135002  247.160000  248.685001  2.255600e+07   \n",
       "max    319.320007  308.910004  313.500000  317.140015  1.598343e+08   \n",
       "\n",
       "        Adj Close  \n",
       "count  560.000000  \n",
       "mean   209.065911  \n",
       "std     52.269010  \n",
       "min     76.760002  \n",
       "25%    171.924999  \n",
       "50%    215.260002  \n",
       "75%    248.685001  \n",
       "max    317.140015  "
      ]
     },
     "execution_count": 132,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 阿里巴巴描述统计\n",
    "babaDf.describe()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 数据可视化"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 149,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Populating the interactive namespace from numpy and matplotlib\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x432 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 阿里巴巴股票走势图\n",
    "%matplotlib inline \n",
    "%pylab inline \n",
    "pylab.rcParams['figure.figsize']=(10,6)\n",
    "plt.plot(babaDf['Close'])\n",
    "plt.title('BABA')\n",
    "plt.grid(True)\n",
    "plt.xlabel('Date',fontsize=12)\n",
    "plt.ylabel('Close Price (USD)',fontsize=12)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 146,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "股票累计下跌= -0.48939179662775734\n"
     ]
    }
   ],
   "source": [
    "# 特征工程\n",
    "def change(column):\n",
    "    buyPrice=column[0]\n",
    "    curPrice=column[column.size-1]\n",
    "    # 累计涨跌幅\n",
    "    priceChange=(curPrice-buyPrice)/buyPrice\n",
    "    if(priceChange > 0):\n",
    "        print('股票累计上涨=',priceChange)\n",
    "    elif(priceChange == 0):\n",
    "        print('股票累计没有变化=',priceChange)\n",
    "    else:\n",
    "        print('股票累计下跌=',priceChange)\n",
    "    return priceChange\n",
    "# 获取收盘价Close这一列的数据\n",
    "closeCol = babaDf['Close']\n",
    "# 调用函数，获取涨跌幅\n",
    "babaChange = change(closeCol)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 150,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Populating the interactive namespace from numpy and matplotlib\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x432 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "%matplotlib inline \n",
    "%pylab inline \n",
    "pylab.rcParams['figure.figsize']=(10,6) # 改变大小plot\n",
    "babaDf[\"Close\"].plot(grid=True)   # 调整后的收盘价\n",
    "# plt.plot(label='baba')\n",
    "plt.title('BABA')\n",
    "plt.legend()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 1.2 方法二：爬虫"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 154,
   "metadata": {},
   "outputs": [],
   "source": [
    "import random\n",
    "import time\n",
    "from requests import get\n",
    "import json\n",
    "import pandas as pd"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 158,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "jQuery18306953920586766751_1647761160799({\"Data\":{\"LSJZList\":[{\"FSRQ\":\"2022-03-17\",\"DWJZ\":\"0.7873\",\"LJJZ\":\"0.7873\",\"SDATE\":null,\"ACTUALSYI\":\"\",\"NAVTYPE\":\"1\",\"JZZZL\":\"0.94\",\"SGZT\":\"限制大额申购\",\"SHZT\":\"开放赎回\",\"FHFCZ\":\"\",\"FHFCBZ\":\"\",\"DTYPE\":null,\"FHSP\":\"\"},{\"FSRQ\":\"2022-03-16\",\"DWJZ\":\"0.7800\",\"LJJZ\":\"0.7800\",\"SDATE\":null,\"ACTUALSYI\":\"\",\"NAVTYPE\":\"1\",\"JZZZL\":\"27.20\",\"SGZT\":\"限制大额申购\",\"SHZT\":\"开放赎回\",\"FHFCZ\":\"\",\"FHFCBZ\":\"\",\"DTYPE\":null,\"FHSP\":\"\"},{\"FSRQ\":\"2022-03-15\",\"DWJZ\":\"0.6132\",\"LJJZ\":\"0.6132\",\"SDATE\":null,\"ACTUALSYI\":\"\",\"NAVTYPE\":\"1\",\"JZZZL\":\"-3.48\",\"SGZT\":\"限制大额申购\",\"SHZT\":\"开放赎回\",\"FHFCZ\":\"\",\"FHFCBZ\":\"\",\"DTYPE\":null,\"FHSP\":\"\"},{\"FSRQ\":\"2022-03-14\",\"DWJZ\":\"0.6353\",\"LJJZ\":\"0.6353\",\"SDATE\":null,\"ACTUALSYI\":\"\",\"NAVTYPE\":\"1\",\"JZZZL\":\"-9.89\",\"SGZT\":\"限制大额申购\",\"SHZT\":\"开放赎回\",\"FHFCZ\":\"\",\"FHFCBZ\":\"\",\"DTYPE\":null,\"FHSP\":\"\"},{\"FSRQ\":\"2022-03-11\",\"DWJZ\":\"0.7050\",\"LJJZ\":\"0.7050\",\"SDATE\":null,\"ACTUALSYI\":\"\",\"NAVTYPE\":\"1\",\"JZZZL\":\"-5.56\",\"SGZT\":\"限制大额申购\",\"SHZT\":\"开放赎回\",\"FHFCZ\":\"\",\"FHFCBZ\":\"\",\"DTYPE\":null,\"FHSP\":\"\"},{\"FSRQ\":\"2022-03-10\",\"DWJZ\":\"0.7465\",\"LJJZ\":\"0.7465\",\"SDATE\":null,\"ACTUALSYI\":\"\",\"NAVTYPE\":\"1\",\"JZZZL\":\"-4.48\",\"SGZT\":\"限制大额申购\",\"SHZT\":\"开放赎回\",\"FHFCZ\":\"\",\"FHFCBZ\":\"\",\"DTYPE\":null,\"FHSP\":\"\"},{\"FSRQ\":\"2022-03-09\",\"DWJZ\":\"0.7815\",\"LJJZ\":\"0.7815\",\"SDATE\":null,\"ACTUALSYI\":\"\",\"NAVTYPE\":\"1\",\"JZZZL\":\"2.40\",\"SGZT\":\"限制大额申购\",\"SHZT\":\"开放赎回\",\"FHFCZ\":\"\",\"FHFCBZ\":\"\",\"DTYPE\":null,\"FHSP\":\"\"},{\"FSRQ\":\"2022-03-08\",\"DWJZ\":\"0.7632\",\"LJJZ\":\"0.7632\",\"SDATE\":null,\"ACTUALSYI\":\"\",\"NAVTYPE\":\"1\",\"JZZZL\":\"-1.55\",\"SGZT\":\"限制大额申购\",\"SHZT\":\"开放赎回\",\"FHFCZ\":\"\",\"FHFCBZ\":\"\",\"DTYPE\":null,\"FHSP\":\"\"},{\"FSRQ\":\"2022-03-07\",\"DWJZ\":\"0.7752\",\"LJJZ\":\"0.7752\",\"SDATE\":null,\"ACTUALSYI\":\"\",\"NAVTYPE\":\"1\",\"JZZZL\":\"-4.18\",\"SGZT\":\"限制大额申购\",\"SHZT\":\"开放赎回\",\"FHFCZ\":\"\",\"FHFCBZ\":\"\",\"DTYPE\":null,\"FHSP\":\"\"},{\"FSRQ\":\"2022-03-04\",\"DWJZ\":\"0.8090\",\"LJJZ\":\"0.8090\",\"SDATE\":null,\"ACTUALSYI\":\"\",\"NAVTYPE\":\"1\",\"JZZZL\":\"-3.43\",\"SGZT\":\"限制大额申购\",\"SHZT\":\"开放赎回\",\"FHFCZ\":\"\",\"FHFCBZ\":\"\",\"DTYPE\":null,\"FHSP\":\"\"},{\"FSRQ\":\"2022-03-03\",\"DWJZ\":\"0.8377\",\"LJJZ\":\"0.8377\",\"SDATE\":null,\"ACTUALSYI\":\"\",\"NAVTYPE\":\"1\",\"JZZZL\":\"-2.86\",\"SGZT\":\"限制大额申购\",\"SHZT\":\"开放赎回\",\"FHFCZ\":\"\",\"FHFCBZ\":\"\",\"DTYPE\":null,\"FHSP\":\"\"},{\"FSRQ\":\"2022-03-02\",\"DWJZ\":\"0.8624\",\"LJJZ\":\"0.8624\",\"SDATE\":null,\"ACTUALSYI\":\"\",\"NAVTYPE\":\"1\",\"JZZZL\":\"-0.81\",\"SGZT\":\"限制大额申购\",\"SHZT\":\"开放赎回\",\"FHFCZ\":\"\",\"FHFCBZ\":\"\",\"DTYPE\":null,\"FHSP\":\"\"},{\"FSRQ\":\"2022-03-01\",\"DWJZ\":\"0.8694\",\"LJJZ\":\"0.8694\",\"SDATE\":null,\"ACTUALSYI\":\"\",\"NAVTYPE\":\"1\",\"JZZZL\":\"1.08\",\"SGZT\":\"限制大额申购\",\"SHZT\":\"开放赎回\",\"FHFCZ\":\"\",\"FHFCBZ\":\"\",\"DTYPE\":null,\"FHSP\":\"\"},{\"FSRQ\":\"2022-02-28\",\"DWJZ\":\"0.8601\",\"LJJZ\":\"0.8601\",\"SDATE\":null,\"ACTUALSYI\":\"\",\"NAVTYPE\":\"1\",\"JZZZL\":\"-1.12\",\"SGZT\":\"限制大额申购\",\"SHZT\":\"开放赎回\",\"FHFCZ\":\"\",\"FHFCBZ\":\"\",\"DTYPE\":null,\"FHSP\":\"\"},{\"FSRQ\":\"2022-02-25\",\"DWJZ\":\"0.8698\",\"LJJZ\":\"0.8698\",\"SDATE\":null,\"ACTUALSYI\":\"\",\"NAVTYPE\":\"1\",\"JZZZL\":\"0.07\",\"SGZT\":\"限制大额申购\",\"SHZT\":\"开放赎回\",\"FHFCZ\":\"\",\"FHFCBZ\":\"\",\"DTYPE\":null,\"FHSP\":\"\"},{\"FSRQ\":\"2022-02-24\",\"DWJZ\":\"0.8692\",\"LJJZ\":\"0.8692\",\"SDATE\":null,\"ACTUALSYI\":\"\",\"NAVTYPE\":\"1\",\"JZZZL\":\"-1.95\",\"SGZT\":\"限制大额申购\",\"SHZT\":\"开放赎回\",\"FHFCZ\":\"\",\"FHFCBZ\":\"\",\"DTYPE\":null,\"FHSP\":\"\"},{\"FSRQ\":\"2022-02-23\",\"DWJZ\":\"0.8865\",\"LJJZ\":\"0.8865\",\"SDATE\":null,\"ACTUALSYI\":\"\",\"NAVTYPE\":\"1\",\"JZZZL\":\"-0.75\",\"SGZT\":\"限制大额申购\",\"SHZT\":\"开放赎回\",\"FHFCZ\":\"\",\"FHFCBZ\":\"\",\"DTYPE\":null,\"FHSP\":\"\"},{\"FSRQ\":\"2022-02-22\",\"DWJZ\":\"0.8932\",\"LJJZ\":\"0.8932\",\"SDATE\":null,\"ACTUALSYI\":\"\",\"NAVTYPE\":\"1\",\"JZZZL\":\"-2.48\",\"SGZT\":\"限制大额申购\",\"SHZT\":\"开放赎回\",\"FHFCZ\":\"\",\"FHFCBZ\":\"\",\"DTYPE\":null,\"FHSP\":\"\"},{\"FSRQ\":\"2022-02-21\",\"DWJZ\":\"0.9159\",\"LJJZ\":\"0.9159\",\"SDATE\":null,\"ACTUALSYI\":\"\",\"NAVTYPE\":\"1\",\"JZZZL\":\"-2.23\",\"SGZT\":\"暂停申购\",\"SHZT\":\"暂停赎回\",\"FHFCZ\":\"\",\"FHFCBZ\":\"\",\"DTYPE\":null,\"FHSP\":\"\"},{\"FSRQ\":\"2022-02-18\",\"DWJZ\":\"0.9368\",\"LJJZ\":\"0.9368\",\"SDATE\":null,\"ACTUALSYI\":\"\",\"NAVTYPE\":\"1\",\"JZZZL\":\"-4.49\",\"SGZT\":\"限制大额申购\",\"SHZT\":\"开放赎回\",\"FHFCZ\":\"\",\"FHFCBZ\":\"\",\"DTYPE\":null,\"FHSP\":\"\"}],\"FundType\":\"007\",\"SYType\":null,\"isNewType\":false,\"Feature\":\"055,318,319\"},\"ErrCode\":0,\"ErrMsg\":null,\"TotalCount\":747,\"Expansion\":null,\"PageSize\":20,\"PageIndex\":1})\n"
     ]
    }
   ],
   "source": [
    "# user_agent列表\n",
    "user_agent_list = [\n",
    "    'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.71 Safari/537.1 LBBROWSER',\n",
    "    'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; QQDownload 732; .NET4.0C; .NET4.0E)',\n",
    "    'Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.84 Safari/535.11 SE 2.X MetaSr 1.0',\n",
    "    'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Maxthon/4.4.3.4000 Chrome/30.0.1599.101 Safari/537.36',\n",
    "    'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.122 UBrowser/4.0.3214.0 Safari/537.36'\n",
    "]\n",
    "\n",
    "# referer列表\n",
    "referer_list = [\n",
    "    'http://fund.eastmoney.com/',\n",
    "    'http://fund.eastmoney.com/006327.html?spm=search',\n",
    "    'http://fund.eastmoney.com/006327.html'\n",
    "]\n",
    "\n",
    "\n",
    "def get_html(baseUrl):\n",
    "    # 获取一个随机user_agent和Referer\n",
    "    headers = {'User-Agent': random.choice(user_agent_list), 'Referer': random.choice(referer_list)}\n",
    "    try:\n",
    "        resp = get(baseUrl, headers=headers)\n",
    "        # print(resp.status_code)\n",
    "        if resp.status_code == 200:\n",
    "            return resp.text\n",
    "        print(\"没有爬取到相应的内容\")\n",
    "        return None\n",
    "    except RequestException:\n",
    "        print(\"没有爬取到相应的内容\")\n",
    "        return None\n",
    "\n",
    "\n",
    "if __name__ == \"__main__\":\n",
    "\n",
    "    t = time.time()\n",
    "    rt = int(round(t * 1000))\n",
    "#     baseUrl = \"http://api.fund.eastmoney.com/f10/lsjz?callback=jQuery18306953920586766751_1647761160799&fundCode=006327&pageIndex=1&pageSize=20&startDate=&endDate=&_=1647761160816\"\n",
    "    baseUrl = \"http://api.fund.eastmoney.com/f10/lsjz?callback=jQuery18306953920586766751_1647761160799&fundCode=006327&pageIndex=1&pageSize=20&startDate=&endDate=&_=\" + str(rt)\n",
    "    data = get_html(baseUrl)\n",
    "    print(data)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 161,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'Data': {'LSJZList': [{'FSRQ': '2022-03-17',\n",
       "    'DWJZ': '0.7873',\n",
       "    'LJJZ': '0.7873',\n",
       "    'SDATE': None,\n",
       "    'ACTUALSYI': '',\n",
       "    'NAVTYPE': '1',\n",
       "    'JZZZL': '0.94',\n",
       "    'SGZT': '限制大额申购',\n",
       "    'SHZT': '开放赎回',\n",
       "    'FHFCZ': '',\n",
       "    'FHFCBZ': '',\n",
       "    'DTYPE': None,\n",
       "    'FHSP': ''},\n",
       "   {'FSRQ': '2022-03-16',\n",
       "    'DWJZ': '0.7800',\n",
       "    'LJJZ': '0.7800',\n",
       "    'SDATE': None,\n",
       "    'ACTUALSYI': '',\n",
       "    'NAVTYPE': '1',\n",
       "    'JZZZL': '27.20',\n",
       "    'SGZT': '限制大额申购',\n",
       "    'SHZT': '开放赎回',\n",
       "    'FHFCZ': '',\n",
       "    'FHFCBZ': '',\n",
       "    'DTYPE': None,\n",
       "    'FHSP': ''},\n",
       "   {'FSRQ': '2022-03-15',\n",
       "    'DWJZ': '0.6132',\n",
       "    'LJJZ': '0.6132',\n",
       "    'SDATE': None,\n",
       "    'ACTUALSYI': '',\n",
       "    'NAVTYPE': '1',\n",
       "    'JZZZL': '-3.48',\n",
       "    'SGZT': '限制大额申购',\n",
       "    'SHZT': '开放赎回',\n",
       "    'FHFCZ': '',\n",
       "    'FHFCBZ': '',\n",
       "    'DTYPE': None,\n",
       "    'FHSP': ''},\n",
       "   {'FSRQ': '2022-03-14',\n",
       "    'DWJZ': '0.6353',\n",
       "    'LJJZ': '0.6353',\n",
       "    'SDATE': None,\n",
       "    'ACTUALSYI': '',\n",
       "    'NAVTYPE': '1',\n",
       "    'JZZZL': '-9.89',\n",
       "    'SGZT': '限制大额申购',\n",
       "    'SHZT': '开放赎回',\n",
       "    'FHFCZ': '',\n",
       "    'FHFCBZ': '',\n",
       "    'DTYPE': None,\n",
       "    'FHSP': ''},\n",
       "   {'FSRQ': '2022-03-11',\n",
       "    'DWJZ': '0.7050',\n",
       "    'LJJZ': '0.7050',\n",
       "    'SDATE': None,\n",
       "    'ACTUALSYI': '',\n",
       "    'NAVTYPE': '1',\n",
       "    'JZZZL': '-5.56',\n",
       "    'SGZT': '限制大额申购',\n",
       "    'SHZT': '开放赎回',\n",
       "    'FHFCZ': '',\n",
       "    'FHFCBZ': '',\n",
       "    'DTYPE': None,\n",
       "    'FHSP': ''},\n",
       "   {'FSRQ': '2022-03-10',\n",
       "    'DWJZ': '0.7465',\n",
       "    'LJJZ': '0.7465',\n",
       "    'SDATE': None,\n",
       "    'ACTUALSYI': '',\n",
       "    'NAVTYPE': '1',\n",
       "    'JZZZL': '-4.48',\n",
       "    'SGZT': '限制大额申购',\n",
       "    'SHZT': '开放赎回',\n",
       "    'FHFCZ': '',\n",
       "    'FHFCBZ': '',\n",
       "    'DTYPE': None,\n",
       "    'FHSP': ''},\n",
       "   {'FSRQ': '2022-03-09',\n",
       "    'DWJZ': '0.7815',\n",
       "    'LJJZ': '0.7815',\n",
       "    'SDATE': None,\n",
       "    'ACTUALSYI': '',\n",
       "    'NAVTYPE': '1',\n",
       "    'JZZZL': '2.40',\n",
       "    'SGZT': '限制大额申购',\n",
       "    'SHZT': '开放赎回',\n",
       "    'FHFCZ': '',\n",
       "    'FHFCBZ': '',\n",
       "    'DTYPE': None,\n",
       "    'FHSP': ''},\n",
       "   {'FSRQ': '2022-03-08',\n",
       "    'DWJZ': '0.7632',\n",
       "    'LJJZ': '0.7632',\n",
       "    'SDATE': None,\n",
       "    'ACTUALSYI': '',\n",
       "    'NAVTYPE': '1',\n",
       "    'JZZZL': '-1.55',\n",
       "    'SGZT': '限制大额申购',\n",
       "    'SHZT': '开放赎回',\n",
       "    'FHFCZ': '',\n",
       "    'FHFCBZ': '',\n",
       "    'DTYPE': None,\n",
       "    'FHSP': ''},\n",
       "   {'FSRQ': '2022-03-07',\n",
       "    'DWJZ': '0.7752',\n",
       "    'LJJZ': '0.7752',\n",
       "    'SDATE': None,\n",
       "    'ACTUALSYI': '',\n",
       "    'NAVTYPE': '1',\n",
       "    'JZZZL': '-4.18',\n",
       "    'SGZT': '限制大额申购',\n",
       "    'SHZT': '开放赎回',\n",
       "    'FHFCZ': '',\n",
       "    'FHFCBZ': '',\n",
       "    'DTYPE': None,\n",
       "    'FHSP': ''},\n",
       "   {'FSRQ': '2022-03-04',\n",
       "    'DWJZ': '0.8090',\n",
       "    'LJJZ': '0.8090',\n",
       "    'SDATE': None,\n",
       "    'ACTUALSYI': '',\n",
       "    'NAVTYPE': '1',\n",
       "    'JZZZL': '-3.43',\n",
       "    'SGZT': '限制大额申购',\n",
       "    'SHZT': '开放赎回',\n",
       "    'FHFCZ': '',\n",
       "    'FHFCBZ': '',\n",
       "    'DTYPE': None,\n",
       "    'FHSP': ''},\n",
       "   {'FSRQ': '2022-03-03',\n",
       "    'DWJZ': '0.8377',\n",
       "    'LJJZ': '0.8377',\n",
       "    'SDATE': None,\n",
       "    'ACTUALSYI': '',\n",
       "    'NAVTYPE': '1',\n",
       "    'JZZZL': '-2.86',\n",
       "    'SGZT': '限制大额申购',\n",
       "    'SHZT': '开放赎回',\n",
       "    'FHFCZ': '',\n",
       "    'FHFCBZ': '',\n",
       "    'DTYPE': None,\n",
       "    'FHSP': ''},\n",
       "   {'FSRQ': '2022-03-02',\n",
       "    'DWJZ': '0.8624',\n",
       "    'LJJZ': '0.8624',\n",
       "    'SDATE': None,\n",
       "    'ACTUALSYI': '',\n",
       "    'NAVTYPE': '1',\n",
       "    'JZZZL': '-0.81',\n",
       "    'SGZT': '限制大额申购',\n",
       "    'SHZT': '开放赎回',\n",
       "    'FHFCZ': '',\n",
       "    'FHFCBZ': '',\n",
       "    'DTYPE': None,\n",
       "    'FHSP': ''},\n",
       "   {'FSRQ': '2022-03-01',\n",
       "    'DWJZ': '0.8694',\n",
       "    'LJJZ': '0.8694',\n",
       "    'SDATE': None,\n",
       "    'ACTUALSYI': '',\n",
       "    'NAVTYPE': '1',\n",
       "    'JZZZL': '1.08',\n",
       "    'SGZT': '限制大额申购',\n",
       "    'SHZT': '开放赎回',\n",
       "    'FHFCZ': '',\n",
       "    'FHFCBZ': '',\n",
       "    'DTYPE': None,\n",
       "    'FHSP': ''},\n",
       "   {'FSRQ': '2022-02-28',\n",
       "    'DWJZ': '0.8601',\n",
       "    'LJJZ': '0.8601',\n",
       "    'SDATE': None,\n",
       "    'ACTUALSYI': '',\n",
       "    'NAVTYPE': '1',\n",
       "    'JZZZL': '-1.12',\n",
       "    'SGZT': '限制大额申购',\n",
       "    'SHZT': '开放赎回',\n",
       "    'FHFCZ': '',\n",
       "    'FHFCBZ': '',\n",
       "    'DTYPE': None,\n",
       "    'FHSP': ''},\n",
       "   {'FSRQ': '2022-02-25',\n",
       "    'DWJZ': '0.8698',\n",
       "    'LJJZ': '0.8698',\n",
       "    'SDATE': None,\n",
       "    'ACTUALSYI': '',\n",
       "    'NAVTYPE': '1',\n",
       "    'JZZZL': '0.07',\n",
       "    'SGZT': '限制大额申购',\n",
       "    'SHZT': '开放赎回',\n",
       "    'FHFCZ': '',\n",
       "    'FHFCBZ': '',\n",
       "    'DTYPE': None,\n",
       "    'FHSP': ''},\n",
       "   {'FSRQ': '2022-02-24',\n",
       "    'DWJZ': '0.8692',\n",
       "    'LJJZ': '0.8692',\n",
       "    'SDATE': None,\n",
       "    'ACTUALSYI': '',\n",
       "    'NAVTYPE': '1',\n",
       "    'JZZZL': '-1.95',\n",
       "    'SGZT': '限制大额申购',\n",
       "    'SHZT': '开放赎回',\n",
       "    'FHFCZ': '',\n",
       "    'FHFCBZ': '',\n",
       "    'DTYPE': None,\n",
       "    'FHSP': ''},\n",
       "   {'FSRQ': '2022-02-23',\n",
       "    'DWJZ': '0.8865',\n",
       "    'LJJZ': '0.8865',\n",
       "    'SDATE': None,\n",
       "    'ACTUALSYI': '',\n",
       "    'NAVTYPE': '1',\n",
       "    'JZZZL': '-0.75',\n",
       "    'SGZT': '限制大额申购',\n",
       "    'SHZT': '开放赎回',\n",
       "    'FHFCZ': '',\n",
       "    'FHFCBZ': '',\n",
       "    'DTYPE': None,\n",
       "    'FHSP': ''},\n",
       "   {'FSRQ': '2022-02-22',\n",
       "    'DWJZ': '0.8932',\n",
       "    'LJJZ': '0.8932',\n",
       "    'SDATE': None,\n",
       "    'ACTUALSYI': '',\n",
       "    'NAVTYPE': '1',\n",
       "    'JZZZL': '-2.48',\n",
       "    'SGZT': '限制大额申购',\n",
       "    'SHZT': '开放赎回',\n",
       "    'FHFCZ': '',\n",
       "    'FHFCBZ': '',\n",
       "    'DTYPE': None,\n",
       "    'FHSP': ''},\n",
       "   {'FSRQ': '2022-02-21',\n",
       "    'DWJZ': '0.9159',\n",
       "    'LJJZ': '0.9159',\n",
       "    'SDATE': None,\n",
       "    'ACTUALSYI': '',\n",
       "    'NAVTYPE': '1',\n",
       "    'JZZZL': '-2.23',\n",
       "    'SGZT': '暂停申购',\n",
       "    'SHZT': '暂停赎回',\n",
       "    'FHFCZ': '',\n",
       "    'FHFCBZ': '',\n",
       "    'DTYPE': None,\n",
       "    'FHSP': ''},\n",
       "   {'FSRQ': '2022-02-18',\n",
       "    'DWJZ': '0.9368',\n",
       "    'LJJZ': '0.9368',\n",
       "    'SDATE': None,\n",
       "    'ACTUALSYI': '',\n",
       "    'NAVTYPE': '1',\n",
       "    'JZZZL': '-4.49',\n",
       "    'SGZT': '限制大额申购',\n",
       "    'SHZT': '开放赎回',\n",
       "    'FHFCZ': '',\n",
       "    'FHFCBZ': '',\n",
       "    'DTYPE': None,\n",
       "    'FHSP': ''}],\n",
       "  'FundType': '007',\n",
       "  'SYType': None,\n",
       "  'isNewType': False,\n",
       "  'Feature': '055,318,319'},\n",
       " 'ErrCode': 0,\n",
       " 'ErrMsg': None,\n",
       " 'TotalCount': 747,\n",
       " 'Expansion': None,\n",
       " 'PageSize': 20,\n",
       " 'PageIndex': 1}"
      ]
     },
     "execution_count": 161,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 将结果格式化一下 留下有用的字符串部分\n",
    "res = re.findall(r'\\{.*\\}',data)\n",
    " # 将一个json对象（str）转化为相对应的python对象\n",
    "jsonText = json.loads(res[0])\n",
    "jsonText"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 116,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "2022-03-17 0.94\n",
      "2022-03-16 27.20\n",
      "2022-03-15 -3.48\n",
      "2022-03-14 -9.89\n",
      "2022-03-11 -5.56\n",
      "2022-03-10 -4.48\n",
      "2022-03-09 2.40\n",
      "2022-03-08 -1.55\n",
      "2022-03-07 -4.18\n",
      "2022-03-04 -3.43\n",
      "2022-03-03 -2.86\n",
      "2022-03-02 -0.81\n",
      "2022-03-01 1.08\n",
      "2022-02-28 -1.12\n",
      "2022-02-25 0.07\n",
      "2022-02-24 -1.95\n",
      "2022-02-23 -0.75\n",
      "2022-02-22 -2.48\n",
      "2022-02-21 -2.23\n",
      "2022-02-18 -4.49\n"
     ]
    }
   ],
   "source": [
    "# 保存或使用数据\n",
    "# CSV/EXCEL + Pandas\n",
    "infos = jsonText['Data']['LSJZList']\n",
    "\n",
    "for info in infos:\n",
    "    FSRQ = info['FSRQ']      # 日期\n",
    "    DWJZ = info['DWJZ']      # 单位净值\n",
    "    LJJZ = info['LJJZ']      # 累计净值\n",
    "    JZZZL = info['JZZZL']    # 增长率\n",
    "    print(FSRQ, JZZZL)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 121,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>FSRQ</th>\n",
       "      <th>DWJZ</th>\n",
       "      <th>LJJZ</th>\n",
       "      <th>JZZZL</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2022-02-18</th>\n",
       "      <td>2022-02-18</td>\n",
       "      <td>0.9368</td>\n",
       "      <td>0.9368</td>\n",
       "      <td>-4.49</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2022-02-21</th>\n",
       "      <td>2022-02-21</td>\n",
       "      <td>0.9159</td>\n",
       "      <td>0.9159</td>\n",
       "      <td>-2.23</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2022-02-22</th>\n",
       "      <td>2022-02-22</td>\n",
       "      <td>0.8932</td>\n",
       "      <td>0.8932</td>\n",
       "      <td>-2.48</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2022-02-23</th>\n",
       "      <td>2022-02-23</td>\n",
       "      <td>0.8865</td>\n",
       "      <td>0.8865</td>\n",
       "      <td>-0.75</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2022-02-24</th>\n",
       "      <td>2022-02-24</td>\n",
       "      <td>0.8692</td>\n",
       "      <td>0.8692</td>\n",
       "      <td>-1.95</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2022-02-25</th>\n",
       "      <td>2022-02-25</td>\n",
       "      <td>0.8698</td>\n",
       "      <td>0.8698</td>\n",
       "      <td>0.07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2022-02-28</th>\n",
       "      <td>2022-02-28</td>\n",
       "      <td>0.8601</td>\n",
       "      <td>0.8601</td>\n",
       "      <td>-1.12</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2022-03-01</th>\n",
       "      <td>2022-03-01</td>\n",
       "      <td>0.8694</td>\n",
       "      <td>0.8694</td>\n",
       "      <td>1.08</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2022-03-02</th>\n",
       "      <td>2022-03-02</td>\n",
       "      <td>0.8624</td>\n",
       "      <td>0.8624</td>\n",
       "      <td>-0.81</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2022-03-03</th>\n",
       "      <td>2022-03-03</td>\n",
       "      <td>0.8377</td>\n",
       "      <td>0.8377</td>\n",
       "      <td>-2.86</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2022-03-04</th>\n",
       "      <td>2022-03-04</td>\n",
       "      <td>0.8090</td>\n",
       "      <td>0.8090</td>\n",
       "      <td>-3.43</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2022-03-07</th>\n",
       "      <td>2022-03-07</td>\n",
       "      <td>0.7752</td>\n",
       "      <td>0.7752</td>\n",
       "      <td>-4.18</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2022-03-08</th>\n",
       "      <td>2022-03-08</td>\n",
       "      <td>0.7632</td>\n",
       "      <td>0.7632</td>\n",
       "      <td>-1.55</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2022-03-09</th>\n",
       "      <td>2022-03-09</td>\n",
       "      <td>0.7815</td>\n",
       "      <td>0.7815</td>\n",
       "      <td>2.40</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2022-03-10</th>\n",
       "      <td>2022-03-10</td>\n",
       "      <td>0.7465</td>\n",
       "      <td>0.7465</td>\n",
       "      <td>-4.48</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2022-03-11</th>\n",
       "      <td>2022-03-11</td>\n",
       "      <td>0.7050</td>\n",
       "      <td>0.7050</td>\n",
       "      <td>-5.56</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2022-03-14</th>\n",
       "      <td>2022-03-14</td>\n",
       "      <td>0.6353</td>\n",
       "      <td>0.6353</td>\n",
       "      <td>-9.89</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2022-03-15</th>\n",
       "      <td>2022-03-15</td>\n",
       "      <td>0.6132</td>\n",
       "      <td>0.6132</td>\n",
       "      <td>-3.48</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2022-03-16</th>\n",
       "      <td>2022-03-16</td>\n",
       "      <td>0.7800</td>\n",
       "      <td>0.7800</td>\n",
       "      <td>27.20</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2022-03-17</th>\n",
       "      <td>2022-03-17</td>\n",
       "      <td>0.7873</td>\n",
       "      <td>0.7873</td>\n",
       "      <td>0.94</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                  FSRQ    DWJZ    LJJZ  JZZZL\n",
       "2022-02-18  2022-02-18  0.9368  0.9368  -4.49\n",
       "2022-02-21  2022-02-21  0.9159  0.9159  -2.23\n",
       "2022-02-22  2022-02-22  0.8932  0.8932  -2.48\n",
       "2022-02-23  2022-02-23  0.8865  0.8865  -0.75\n",
       "2022-02-24  2022-02-24  0.8692  0.8692  -1.95\n",
       "2022-02-25  2022-02-25  0.8698  0.8698   0.07\n",
       "2022-02-28  2022-02-28  0.8601  0.8601  -1.12\n",
       "2022-03-01  2022-03-01  0.8694  0.8694   1.08\n",
       "2022-03-02  2022-03-02  0.8624  0.8624  -0.81\n",
       "2022-03-03  2022-03-03  0.8377  0.8377  -2.86\n",
       "2022-03-04  2022-03-04  0.8090  0.8090  -3.43\n",
       "2022-03-07  2022-03-07  0.7752  0.7752  -4.18\n",
       "2022-03-08  2022-03-08  0.7632  0.7632  -1.55\n",
       "2022-03-09  2022-03-09  0.7815  0.7815   2.40\n",
       "2022-03-10  2022-03-10  0.7465  0.7465  -4.48\n",
       "2022-03-11  2022-03-11  0.7050  0.7050  -5.56\n",
       "2022-03-14  2022-03-14  0.6353  0.6353  -9.89\n",
       "2022-03-15  2022-03-15  0.6132  0.6132  -3.48\n",
       "2022-03-16  2022-03-16  0.7800  0.7800  27.20\n",
       "2022-03-17  2022-03-17  0.7873  0.7873   0.94"
      ]
     },
     "execution_count": 121,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "infosList = []\n",
    "indexList = []\n",
    "titleList = ['FSRQ','DWJZ','LJJZ','JZZZL']\n",
    "\n",
    "for info in infos:\n",
    "    # print(info)\n",
    "    FSRQ = info['FSRQ']     # 日期\n",
    "    DWJZ = info['DWJZ']     # 单位净值\n",
    "    LJJZ = info['LJJZ']     # 累计净值\n",
    "    JZZZL = info['JZZZL']     # 增长率\n",
    "\n",
    "    indexList.append(FSRQ)\n",
    "\n",
    "    temList = []\n",
    "    temList.append(FSRQ)\n",
    "    temList.append(float(DWJZ))\n",
    "    temList.append(float(LJJZ))\n",
    "    temList.append(float(JZZZL))\n",
    "    infosList.append(temList)\n",
    "\n",
    "df = pd.DataFrame(infosList, index=indexList, columns=titleList).sort_index()\n",
    "df"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 1.3 收费API"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.2"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
